package com.ruoyi.system.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.domain.MemberList;

/**
 * 会员列（存储会员基础信息、账户状态及权益数据）Service接口
 *
 * @author ruoyi
 * @date 2025-05-14
 */
public interface IMemberListService extends IService<MemberList>
{
    /**
     * 通过id查询会员列表
     *
     * @param id 会员列（存储会员基础信息、账户状态及权益数据）主键
     * @return 会员列（存储会员基础信息、账户状态及权益数据）
     */
    public MemberList selectMemberListById(Long id);

    /**
     * 查询会员列表（
     *
     * @param  memberName,phone,memberCardNo, memberLevel,memberStatus,gender,referrerId,registerStore,operatorStaff,authMethod（存储会员基础信息、账户状态及权益数据）
     * @return 会员列（存储会员基础信息、账户状态及权益数据）集合
     */
    public List<MemberList> selectMemberListList(String memberName,String phone,String memberCardNo,String memberLevel,String memberStatus,String gender,Long referrerId,String registerStore,String operatorStaff,String authMethod);

    /**
     * 新增会员列表
     *
     * @param memberList 会员列（存储会员基础信息、账户状态及权益数据）
     * @return 结果
     */
    public int insertMemberList(MemberList memberList);

    /**
     * 修改会员列表
     *
     * @param memberList 会员列（存储会员基础信息、账户状态及权益数据）
     * @return 结果
     */
    public int updateMemberList(MemberList memberList);

    /**
     * 批量删除会员列表
     *
     * @param ids 需要删除的会员列（存储会员基础信息、账户状态及权益数据）主键集合
     * @return 结果
     */
    public int deleteMemberListByIds(Long[] ids);

    /**
     * 删除会员列表
     *
     * @param id 会员列（存储会员基础信息、账户状态及权益数据）主键
     * @return 结果
     */
    public int deleteMemberListById(Long id);
}
